package com.caipos.actor.common.data.rule;

import com.baomidou.mybatisplus.annotation.TableName;
import com.caipos.actor.common.data.EntityType;
import com.caipos.actor.common.data.id.EntityId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.JsonNode;
import lombok.Builder;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.Map;

@Data
@TableName("rule_node")
@Builder
public class RuleNode implements EntityId,Serializable {
    private static final long serialVersionUID = 1L;

    private String id;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date createdTime;

    private String ruleChainId;

    private JsonNode additionalInfo;

    private Long configurationVersion;

    private JsonNode configuration;

    private String type;

    private String name;

    private JsonNode debugSettings;

    private Boolean singletonMode;

    private String queueName;

    private String externalId;

    @Override
    public EntityType getEntityType() {
        return EntityType.RULE_NODE;
    }
}